package com.jeff.practice;

public class RandomGenerator {

    // 假设这个方法是已经给定的，返回 1 到 7 之间的随机整数
    public int rand7() {
        // 这里是示例代码，具体实现应由系统提供
        return (int) (Math.random() * 7) + 1;
    }

    public int rand10() {
        while (true) {
            // 通过 rand7() 生成一个 7x7 的随机数
            int row = rand7() - 1;  // 0 到 6
            int col = rand7() - 1;  // 0 到 6
            int idx = row * 7 + col; // 0 到 48

            // 只取前 40 个数
            if (idx < 40) {
                return idx % 10 + 1; // 转换为 1 到 10
            }
            // 大于 39 的值会被丢弃，继续循环
        }
    }

    public static void main(String[] args) {
        RandomGenerator generator = new RandomGenerator();
        // 测试 rand10() 方法
        for (int i = 0; i < 10; i++) {
            System.out.println(generator.rand10());
        }
    }
}
